#ifndef ADDSTUDENT_H//防止addstudent.h被重复引用
//#ifndef X  //先测试是否被宏定义过
//#define X
//程序段1//如果X没有被宏定义过，定义X，并编译程序段1；
//#else
//程序段2 //如果X已经定义过了则编译程序段2 的语句，忽视程序段1.
//#endif

#define ADDSTUDENT_H

#include <QDialog>
#include <QMessageBox>
#include <QSqlQuery>
#include <QString>

namespace Ui {
class AddStudent;
}

class AddStudent : public QDialog
{
    Q_OBJECT//有了这个才能用信号与槽

public:
    explicit AddStudent(QWidget *parent = 0);//explicit抑制隐式转换的进行
    //A s;  s = 10;  A是个类
    //我们会发现,我们没有重载'='运算符,但是去可以把内置的int类型赋值给了对象A.
    //实际上,10被隐式转换成了下面的形式,所以才能这样.
    //s = A(10);   A（）是构造函数
    //explicit抑制这种转换的进行
    ~AddStudent();

private slots:
    void on_save_clicked();

private:
    Ui::AddStudent *ui;
};

#endif // ADDSTUDENT_H
